package com.yuanqi.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 销售退货订单主表
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sales_return_order")
public class SalesReturnOrder {

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 退货单编号（如 SRO_20250826_001）
     */
    private String returnNo;

    /**
     * 关联原销售订单ID
     */
    private Long orderId;

    /**
     * 创建人ID（关联用户表）
     */
    private Long creatorId;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 状态：0草稿 / 1待审核 / 2审核通过 / 3已完成
     */
    private Integer status;

    /**
     * 总退货金额（可选，也可通过子表计算）
     */
    private BigDecimal totalReturnAmount;

    /**
     * 退货单备注
     */
    private String remark;

    /**
     * 客户ID
     */
    private Long customerId;

    /**
     * 客户名称
     */
    private String customerName;

    /**
     * 退货原因
     */
    private String returnReason;

    /**
     * 退货日期
     */
    private LocalDateTime returnDate;

    /**
     * 审核人ID
     */
    private Long auditorId;

    /**
     * 审核时间
     */
    private LocalDateTime auditTime;

    /**
     * 审核意见
     */
    private String auditOpinion;
}

